namespace Xsxiaosa
{
    using System;

    internal class KeyCheckException : Exception
    {
        // Methods
        public KeyCheckException(Xsxiaosa.KeyCheckExceptionStatus s) : base(Xsxiaosa.KeyCheckException.GetMessage(s))
        {
        }

        public KeyCheckException(Xsxiaosa.KeyCheckExceptionStatus s, Exception inner) : base(Xsxiaosa.KeyCheckException.GetMessage(s), inner)
        {
        }

        private static string GetMessage(Xsxiaosa.KeyCheckExceptionStatus s)
        {
            Xsxiaosa.KeyCheckExceptionStatus status1 = s;
            switch (status1)
            {
                case Xsxiaosa.KeyCheckExceptionStatus.KeyNotSigned:
                {
                    goto Label_0018;
                }
                case Xsxiaosa.KeyCheckExceptionStatus.InvalidKey:
                {
                    goto Label_001E;
                }
                case Xsxiaosa.KeyCheckExceptionStatus.UnableToRead:
                {
                    goto Label_0024;
                }
            }
            goto Label_002A;
        Label_0018:
            return "The license key is not signed.";
        Label_001E:
            return "The license key is invalid.";
        Label_0024:
            return "The license key cannot be read.";
        Label_002A:
            return "The license key cannot be validated.";
        }

    }}

